//
//  UITableView+Extension.m
//  Masonry
//
//  Created by yons on 26.10.20.
//

#import "UITableView+Extension.h"

@implementation UITableView (Extension)

/// 初始化方法
/// @param style 类型
/// @param separatorStyle 分割线方法
+ (UITableView *)tableViewWithStyle:(UITableViewStyle)style separatorStyle:(UITableViewCellSeparatorStyle)separatorStyle {
    UITableView *tableView = [[UITableView alloc] initWithFrame:CGRectZero style:style];
    tableView.estimatedSectionFooterHeight = 0;
    tableView.estimatedSectionHeaderHeight = 0;
    tableView.separatorStyle = separatorStyle;
    tableView.estimatedRowHeight = 0;
    return tableView;
}


/// 初始化方法+cell注册
/// @param style 类型
/// @param separatorStyle 分割线方法
/// @param registerClassArray cell]数组
+ (UITableView *)tableViewWithStyle:(UITableViewStyle)style separatorStyle:(UITableViewCellSeparatorStyle)separatorStyle registerClassArray:(NSArray<Class> *)registerClassArray {
    UITableView *tableView = [self tableViewWithStyle:style separatorStyle:separatorStyle];
    [registerClassArray enumerateObjectsUsingBlock:^(Class  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
        [tableView registerClass:[obj class] forCellReuseIdentifier:NSStringFromClass(obj)];
    }];
    return tableView;
}

@end
